package com.health.tools;

import java.util.ArrayList;
import java.util.List;

import com.health.NovaApplication;

import android.text.TextUtils;

/**
 * 删除档案功能 按身份证号删除
 * 
 * @author nova
 *
 */
public class DeleteDAData {
	public static void deleteDaData(String cardNum) {
		if (TextUtils.isEmpty(cardNum)) {
			return;
		}

		List<String> listCardNum = new ArrayList<String>();
		// 家庭医生 身份证号字段均是cardNum
		// 家庭医生个人基本信息
		listCardNum.add("JTYS_BASEINFO");// cardNum
		// 客户签约表
		listCardNum.add("JTYS_KHQYB");// cardNum
		// 服务项目信息(通用信息不用删除)
		// list.add("JTYS_FWXMB");
		// 服务满意度评价表
		listCardNum.add("JTYS_FWMYD");// cardNum

		// 以下所有的表 身份证号字段均是 IDCARD
		List<String> listIDCARD = new ArrayList<String>();

		// 1、个人基本信息
		// 个人基本信息1
		listIDCARD.add("ARCHIVE_BASEINFO");
		// 个人基本信息_生活环境1
		listIDCARD.add("ARCHIVE_ENVIRONMENT");
		// 个人基本信息_家族史1
		listIDCARD.add("ARCHIVE_FAMILYHISTORYINFO");
		// 个人基本信息_既往史1
		listIDCARD.add("ARCHIVE_ILLNESSHISTORYINFO");

		// 健康体检
		// 健康体检_客户体检基本信息1
		listIDCARD.add("ARCHIVE_CUSTOMERBASEINFO");
		// 健康体检_一般状况1
		listIDCARD.add("ARCHIVE_GENERALCONDITION");
		// 老年人生活自理能力评估表1
		listIDCARD.add("OLDER_SELFCAREABILITY");
		// 健康体检_生活方式1
		listIDCARD.add("ARCHIVE_LIFESTYLE");
		// 健康体检_查体表1
		listIDCARD.add("ARCHIVE_PHYSICALEXAM");
		// 健康体检_辅助检查表1
		listIDCARD.add("ARCHIVE_ASSISTCHECK");
		// 健康体检_中医体质辨识表1
		listIDCARD.add("ARCHIVE_MEDI_PHYS_DIST");
		// 健康体检_脏器功能表1
		listIDCARD.add("ARCHIVE_VISCERAFUNCTION");
		// 老年人中医体质辨识表1
		listIDCARD.add("OLD_MEDICINE_RESULT");
		// 健康体检_健康问题表1
		listIDCARD.add("ARCHIVE_HEALTHQUESTION");
		// 健康体检_家庭病床史表1
		listIDCARD.add("ARCHIVE_FAMILYBEDHISTORY");
		// 健康体检_住院史表1
		listIDCARD.add("ARCHIVE_HOSPITALHISTORY");
		// 健康体检_主要用药情况表1
		listIDCARD.add("ARCHIVE_MEDICATION");
		// 健康体检_健康评价与指导 1
		listIDCARD.add("ARCHIVE_ASSESSMENTGUIDE");
		// 健康体检_非免疫规划预防接种史表1
		listIDCARD.add("ARCHIVE_INOCULATIONHISTORY");

		// 糖尿病
		// 糖尿病患者随访表1
		listIDCARD.add("CD_DIABETESFOLLOWUP");
		// 用药情况1
		listIDCARD.add("CD_DRUGCONDITION");

		// 脑卒中
		// 脑卒中随访记录表1
		listIDCARD.add("CD_STROKE_FOLLOWUP");
		// // 用药情况
		// list.add("CD_DRUGCONDITION");

		// 精神疾病
		// 重性精神疾病患者个人信息补充表1
		listIDCARD.add("CD_MENTALDISEASE_BASEINFO");
		// 重性精神疾病患者随访服务记录表1
		listIDCARD.add("CD_MENTALDISEASE_FOLLOWUP");
		// // 用药情况
		// list.add("CD_DRUGCONDITION");

		// 高血压
		// 高血压患者随访记录表1
		listIDCARD.add("CD_HYPERTENSIONFOLLOWUP");
		// // 用药情况
		// list.add("CD_DRUGCONDITION");

		// 孕妇
		// 孕妇基本信息表1
		listIDCARD.add("GRAVIDA_BASEINFO");
		// 第一次产前随访服务记录表1
		listIDCARD.add("GRAVIDA_FIRSTFOLLOWUP");
		// 产前随访辅助检查1
		listIDCARD.add("GRAVIDA_PRE_ASSISTCHECK");
		// 第2～5次产前随访服务记录表1
		listIDCARD.add("GRAVIDA_TWO2FIVE_FOLLOWUP");
		// 产后访视记录表1
		listIDCARD.add("GRAVIDA_POSTPARTUM");
		// 产后42天健康检查记录表1
		listIDCARD.add("GRAVIDA_POSTPARTUM_42DAY");

		// 9、儿童
		// 儿童基本信息表//儿童管理卡1
		listIDCARD.add("CHILD_BASEINFO");
		// 新生儿家庭访视记录表1
		listIDCARD.add("CHILD_NEWBORN_FOLLOWUP");
		// 1岁以内儿童健康检查记录表1
		listIDCARD.add("CHILD_WITHIN_ONE_YEAR_OLD");
		// 1岁以内儿童中医药健康管理服务1
		listIDCARD.add("CHILD_TCMHM_ONE");
		// 1～2岁儿童健康检查记录表1
		listIDCARD.add("CHILD_ONE2THREE_YEAR_OLD");
		// 1～2岁儿童中医药健康管理服务1
		listIDCARD.add("CHILD_TCMHM_ONE2THREE");
		// 3～6岁儿童健康检查记录表1
		listIDCARD.add("CHILD_THREE2SIX_YEAR_OLD");
		// 3～6岁儿童中医药健康管理服务1
		listIDCARD.add("CHILD_TCMHM_THREE2SIX");

		// 10、设备测量
		// 设备测量数据1
		listIDCARD.add("SBCL_DATA");

		// 以下所有的表 身份证号字段均是 CARDID
		List<String> listCARDID = new ArrayList<String>();
		// 照片
		listCARDID.add("HD_PERSONAL_HEALTH_PHOTO");// CARDID

	
		//开始事务
		NovaApplication.dbManger.db.beginTransaction();
		//String args[] ={ today, content, Boolean.toString(checked)};
		//dbServices.delete("_today_plan", "[_Date]=? and [Item]=? and [Check]=?",args);
		try {
			if (listCardNum.size() > 0) {
				for (String bm : listCardNum) {
					String sql = "delete from " + bm + " where cardNum='" + cardNum + "';";
					NovaApplication.dbManger.deleteBySQL(sql);
				}
			}

			if (listIDCARD.size() > 0) {
				for (String bm : listIDCARD) {
					String sql = "delete from " + bm + " where IDCARD='" + cardNum + "';";
					NovaApplication.dbManger.deleteBySQL(sql);
				}
			}

			if (listCARDID.size() > 0) {
				for (String bm : listCARDID) {
					String sql = "delete from " + bm + " where CARDID='" + cardNum + "';";
					NovaApplication.dbManger.deleteBySQL(sql);
				}
			}
			NovaApplication.dbManger.db.setTransactionSuccessful();//调用此方法会在执行到endTransaction() 时提交当前事务，如果不调用此方法会回滚事务
		} finally {
			NovaApplication.dbManger.db.endTransaction();//由事务的标志决定是提交事务，还是回滚事务
		}

	}

}
